package com.leetcode.www;

/**
 * Creared with IntelliJ IDEA.
 * Description:句子 是一个单词列表，列表中的单词之间用单个空格隔开，且不存在前导或尾随空格。每个单词仅由大小写英文字母组成（不含标点符号）。
 *
 * 例如，"Hello World"、"HELLO" 和 "hello world hello world" 都是句子。
 * 给你一个句子 s 和一个整数 k ，请你将 s 截断 ，使截断后的句子仅含 前 k 个单词。返回 截断 s 后得到的句子。
 *
 * 来源：力扣（LeetCode）
 * 链接：https://leetcode-cn.com/problems/truncate-sentence
 *
 * User:yxd
 * Date:2022-01-14
 * Time:18:10
 */
public class Normal1816 {
    public static void main(String[] args) {
        String s = " hello world welcome you";
        int k = 4;
        System.out.println(truncateSentence(s, k));
    }
    public static  String truncateSentence(String s, int k) {
        int n = s.length();
        int end = 0, count = 0;
        for (int i = 1; i <= n; i++) {
            if (i == n || s.charAt(i) == ' ') {
                count++;
                if (count == k) {
                    end = i;
                    break;
                }
            }
        }
        return s.substring(0, end);//直接截取
    }
    public static  String truncateSentence1(String s, int k) {
        if(k < 0)return null;
        if(s.length() == 0 || s == null)return null;
        StringBuilder str = new StringBuilder();
        int n = s.length();
        for(int i = 0;i < n;i ++){
            if(s.charAt(i) == ' '){
                k --;
            }
            if(k == 0){
                break;//到达第k个空格就结束
            }
            str.append(s.charAt(i));


        }
        return str.toString();
    }
}
